package com.wans.guli.ware.vo;

import java.math.BigDecimal;


public class FareVo {

    private MemberAddressVo address;

    private BigDecimal fare;

    FareVo(MemberAddressVo address, BigDecimal fare) {
        this.address = address;
        this.fare = fare;
    }

    public static FareVoBuilder builder() {
        return new FareVoBuilder();
    }

    public MemberAddressVo getAddress() {
        return this.address;
    }

    public BigDecimal getFare() {
        return this.fare;
    }

    public void setAddress(MemberAddressVo address) {
        this.address = address;
    }

    public void setFare(BigDecimal fare) {
        this.fare = fare;
    }

    public boolean equals(final Object o) {
        if (o == this) return true;
        if (!(o instanceof FareVo)) return false;
        final FareVo other = (FareVo) o;
        if (!other.canEqual((Object) this)) return false;
        final Object this$address = this.getAddress();
        final Object other$address = other.getAddress();
        if (this$address == null ? other$address != null : !this$address.equals(other$address)) return false;
        final Object this$fare = this.getFare();
        final Object other$fare = other.getFare();
        if (this$fare == null ? other$fare != null : !this$fare.equals(other$fare)) return false;
        return true;
    }

    protected boolean canEqual(final Object other) {
        return other instanceof FareVo;
    }

    public int hashCode() {
        final int PRIME = 59;
        int result = 1;
        final Object $address = this.getAddress();
        result = result * PRIME + ($address == null ? 43 : $address.hashCode());
        final Object $fare = this.getFare();
        result = result * PRIME + ($fare == null ? 43 : $fare.hashCode());
        return result;
    }

    public String toString() {
        return "FareVo(address=" + this.getAddress() + ", fare=" + this.getFare() + ")";
    }

    public static class FareVoBuilder {
        private MemberAddressVo address;
        private BigDecimal fare;

        FareVoBuilder() {
        }

        public FareVoBuilder address(MemberAddressVo address) {
            this.address = address;
            return this;
        }

        public FareVoBuilder fare(BigDecimal fare) {
            this.fare = fare;
            return this;
        }

        public FareVo build() {
            return new FareVo(this.address, this.fare);
        }

        public String toString() {
            return "FareVo.FareVoBuilder(address=" + this.address + ", fare=" + this.fare + ")";
        }
    }
}


